const api = require('../../api/api')
Page({

  /**
   * 页面的初始数据
   */
  data: {
    method: '',
    films: [],
    start: 0,
    count: 9,
    showNomore: false, //是否显示没有更多
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    // 此处可以不用setData，因为不涉及页面数据的同步更新
    this.data.method = options.method;
  },
  onReady: function () {
    this.loaoListData();
  },
  loaoListData() {
    // 返回Promise对象，便于继续 执行操作
    return api[this.data.method]({
      start: this.data.start,
      count: this.data.count
    }).then(data => {
      let list = this.data.films.list || []
      let films = {
        title: data.subject_collection.name,
        list: list.concat(data.subject_collection_items), //进行数据累加
      }
      this.setData({
        films,
        start: this.data.start + this.data.count, //起始索引累加,
        total: data.total //记录总条数
      })
    })
  },
  /**
   * 上拉加载更多
   */
  onReachBottom: function () {
    // 判断是否还有更多数据
    if (this.data.start > this.data.total) {
      return this.setData({
        showNomore: true,
      })
    }

    // 加载更多数据
    this.loaoListData()
  },

  /**
   * 下拉刷新页面
   */
  onPullDownRefresh: function () {
    this.setData({
      films: [],
      start: 0,
    })
    this.loaoListData();
  },

})